// Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov. // Jad home page: http://www.geocities.com/kpdus/jad.html // Decompiler options: braces fieldsfirst space lnc package com.google.gson.internal.bind; import com.google.gson.JsonSyntaxException; import com.google.gson.TypeAdapter; import com.google.gson.internal.ObjectConstructor; import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonToken; import com.google.gson.stream.JsonWriter; import java.util.Collection; import java.util.Iterator; import java.util.Map; // Referenced classes of package com.google.gson.internal.bind: // j, i public final class <init> extends TypeAdapter { private final ObjectConstructor a; private final Map b; public Object read(JsonReader jsonreader) { Object obj; if (jsonreader.peek() == JsonToken.NULL) { jsonreader.nextNull(); return null; } obj = a.construct(); jsonreader.beginObject(); _L1: j j1; if (!jsonreader.hasNext()) { break MISSING_BLOCK_LABEL_111; } String s = jsonreader.nextName(); j1 = (j)b.get(s); if (j1 == null) { break MISSING_BLOCK_LABEL_72; } if (j1.i) { break MISSING_BLOCK_LABEL_91; } IllegalStateException illegalstateexception; jsonreader.skipValue(); goto _L1 try { j1.a(jsonreader, obj); } // Misplaced declaration of an exception variable catch (IllegalStateException illegalstateexception) { throw new JsonSyntaxException(illegalstateexception); } catch (IllegalAccessException illegalaccessexception) { throw new AssertionError(illegalaccessexception); } goto _L1 jsonreader.endObject(); return obj; } public void write(JsonWriter jsonwriter, Object obj) { if (obj == null) { jsonwriter.nullValue(); return; } jsonwriter.beginObject(); try { Iterator iterator = b.values().iterator(); do { if (!iterator.hasNext()) { break; } j j1 = (j)iterator.next(); if (j1.h) { jsonwriter.name(j1.g); j1.a(jsonwriter, obj); } } while (true); } catch (IllegalAccessException illegalaccessexception) { throw new AssertionError(); } jsonwriter.endObject(); } private (ObjectConstructor objectconstructor, Map map) { a = objectconstructor; b = map; } b(ObjectConstructor objectconstructor, Map map, i i) { this(objectconstructor, map); } }